#include <iostream>
using namespace std;

class Person
{
  int m_a;  // 只有非静态成员变量属于类对象上
  static int m_b; // 静态成员变量 不属于类对象上

  void func(){}; // 非静态成员函数 不属于类对象上

  static void func2(){}; // 静态成员函数 不属于类对象上
};

int Person::m_b = 10;

void test01()
{
  Person p;
  // 空对象占用内存空间为：1
  // c++编译器会给每个空对象分配一个字节的空间，为了区分空对象占内存的位置
  // 每个空对象也应该有一个独一无二的内存地址
  cout << sizeof(p) << endl;
}

void test02()
{
  Person p;
  cout << sizeof(p) << endl;
}

int main(int argc, char const *argv[])
{
  // test01();
  test02();
  cout << sizeof(Person) << endl;

  return 0;
}